Securing data is an important aspect of any enterprise or application. The challenges in securing data in a particular system continue to change however. In a given environment, it may be necessary to secure all data at multiple levels of a particular application, whereas in other environments, it may be necessary to secure only particular data throughout all levels of the application. Thus, there exists a need for security implementations that provide all of the necessary security for a given system, and yet maintain sufficient flexibility and efficiency so that the security is implemented only on data requiring such security.